// PEM文件读取工具

/**
 * 读取PEM文件内容并转换为字符串
 * @param {string} pemFilePath PEM文件路径
 * @returns {string} PEM文件内容字符串
 */
function readPemFile(pemFilePath) {
  try {
    // 在uni-app中，我们需要使用相对路径来读取静态资源
    // 由于uni-app的限制，我们直接返回PEM文件的内容
    // 不同商户可以在这里修改对应的PEM内容
    const pemContent = `-----BEGIN PRIVATE KEY-----{{{{wechat_pay_pay_apiclient_key}}}}-----END PRIVATE KEY-----`;
    
    return pemContent;
  } catch (error) {
    console.error('读取PEM文件失败:', error);
    throw new Error('无法读取PEM文件: ' + error.message);
  }
}

/**
 * 获取私钥字符串（去除PEM格式的头尾标识）
 * @returns {string} 私钥字符串
 */
function getPrivateKeyString() {
  const pemContent = readPemFile();
  // 移除PEM格式的头尾标识和换行符，只保留私钥内容
  return pemContent
    .replace(/-----BEGIN PRIVATE KEY-----/g, '')
    .replace(/-----END PRIVATE KEY-----/g, '')
    .replace(/\n/g, '')
    .replace(/\r/g, '')
    .trim();
}

export {
  readPemFile,
  getPrivateKeyString
};